The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Audiovisual programs are delivered using a variety of media networks that implement television, cable, satellite, internet television, and online video hosting technologies to end user devices such as television sets, smart TVs, desktop computers and mobile devices. Typically these media systems transmit or broadcast both substantive program content and non-program media items within a specified time period. However, to date, the techniques that have been used to determine exactly when to insert a non-program media item within a media program have been primitive. Determining exactly how many end user devices will receive a media program, which non-program media items to display, and when to display them, have involved large amounts of manual data analysis and primitive planning tools such as spreadsheets.
One type of non-program media item that may be used, in this context, is a video segment that describes, discusses or promotes another media program that is aired or carried by a particular network. In most cases, the prior manual approaches for determining which non-program media items to display have worked only with non-program media items that relate to media programs carried in the same network. There has been no commonplace or convenient approach for planning and scheduling the presentation of non-program media items in one network that relate to media programs that are aired or carried on a second, different network. This drawback has also existed even when the first network and the second network are owned or operated by the same legal entity, such as a media holding company that runs many networks.
While each of the drawing figures depicts a particular embodiment for purposes of depicting a clear example, other embodiments may omit, add to, reorder, and/or modify any of the elements shown in the drawing figures. For purposes of depicting clear examples, one or more figures may be described with reference to one or more other figures, but using the particular arrangement depicted in the one or more other figures is not required in other embodiments. Selected drawing figures have been originally filed in an informal form with redaction marking in positions in which text or numbers would be displayed or shown in an implementation; text and numbers form a part of these drawing figures and hypothetical text and numbers that is substituted in the formal drawings should be understood as constituting a part of the original disclosure since the specific content of such text and numbers is not critical.
A “computer” may be one or more physical computers, virtual computers, and/or computing devices. As an example, a computer may be one or more server computers, cloud-based computers, cloud-based cluster of computers, virtual machine instances or virtual machine computing elements such as virtual processors, storage and memory, data centers, storage devices, desktop computers, laptop computers, mobile devices, and/or any other special-purpose computing devices. A computer may be a client and/or a server. Any reference to “a computer” herein may mean one or more computers, unless expressly stated otherwise.
While some of the aforementioned elements are depicted in the figures and described herein as if implemented on a separate, remote computer from each other, this is done for explanation purposes only and one or more of the elements may be part of and/or executed on the same computer. Each of the logical and/or functional units depicted in the figures or described herein may be implemented using any of the techniques further described herein in connection with FIG. 8. For example, a computer may comprise a general-purpose computer configured with one or more stored programs which when executed cause performing the functions described herein for one or more logical and/or functional units; a special-purpose computer with digital logic that is configured to execute the functions; or digital logic that is used in other computing devices. While the figures include lines that indicate various devices and/or modules being communicatively coupled, each of the computers, devices, modules, storage, and logic may be communicatively coupled with each other.